package cn.iocoder.yudao.module.erp.service.dpitem;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.erp.controller.admin.dpitem.dpitemgz.vo.DpItemGzPageReqVO;
import cn.iocoder.yudao.module.erp.controller.admin.dpitem.dpitemgz.vo.DpItemGzSaveReqVO;
import cn.iocoder.yudao.module.erp.dal.dataobject.dpitem.DpItemGzDO;
import cn.iocoder.yudao.module.erp.dal.mysql.dpitem.DpItemGzMapper;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;

import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.module.erp.enums.ErrorCodeConstants.*;

/**
 * ERP广州制单货号详情 Service 实现类
 * @author 天使管理员
 */
@Service
@Validated
public class DpItemGzServiceImpl implements DpItemGzService {

    @Resource
    private DpItemGzMapper dpItemGzMapper;

    @Override
    public Long createDpItemGz(DpItemGzSaveReqVO createReqVO) {
        // 插入
        DpItemGzDO dpItemGz = BeanUtils.toBean(createReqVO, DpItemGzDO.class);
        dpItemGzMapper.insert(dpItemGz);
        // 返回
        return dpItemGz.getId();
    }

    @Override
    public void updateDpItemGz(DpItemGzSaveReqVO updateReqVO) {
        DpItemGzDO updateObj = BeanUtils.toBean(updateReqVO, DpItemGzDO.class);
        dpItemGzMapper.updateById(updateObj);
    }

    @Override
    public void deleteDpItemGz(Long id) {
        dpItemGzMapper.deleteById(id);
    }

    @Override
    public DpItemGzDO getDpItemGz(Long id) {
        return dpItemGzMapper.selectById(id);
    }

    @Override
    public PageResult<DpItemGzDO> getDpItemGzPage(DpItemGzPageReqVO pageReqVO) {
        return dpItemGzMapper.selectPage(pageReqVO);
    }

}